package org.qpcr.community.project.model.entity;

import com.alibaba.fastjson.JSONArray;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import org.qpcr.community.project.model.entity.excel.ExcelDataResponse;

@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
public class DataAnalysisExportAmplificationParam extends ExcelDataResponse {
    @JsonProperty("MeteringSaveData")
    private JSONArray MeteringSaveData;

    @JsonProperty("MeteringSaveDataAxis")
    private JSONArray MeteringSaveDataAxis;

    @JsonProperty("AmplificationDataAnalysis")
    private JSONArray AmplificationDataAnalysis;

    @JsonProperty("AmplificationDataAxis")
    private JSONArray AmplificationDataAxis;

    @JsonProperty("MeltCurveData")
    private JSONArray MeltCurveData;

    @JsonProperty("MeltCurveDataAxis")
    private JSONArray MeltCurveDataAxis;

    @JsonProperty("MeltCurveCalcData")
    private JSONArray MeltCurveCalcData;

    @JsonProperty("MeltCurveCalcDataAxis")
    private JSONArray MeltCurveCalcDataAxis;


    public Boolean hasAmplificationData() {
        return null != MeteringSaveData && MeteringSaveData.size() > 0 && null != MeteringSaveDataAxis && MeteringSaveDataAxis.size() > 0;
    }

    public Boolean hasMeltCurveData() {
        return null != MeltCurveData && MeltCurveData.size() > 0 && null != MeltCurveDataAxis && MeltCurveDataAxis.size() > 0;
    }
}
